#ifndef BMCREPOSITORY_H
#define	BMCREPOSITORY_H

 #ifdef __cplusplus
 extern "C" {
 #endif 

#include <stdint.h>
#include "BMC.h"

//This is the BMC Repository abstract data type.

//The BMC Repository maps each byte of the 6502's address space
//to its corresponding BMC. This is fine for our purposes, since
//program memory of the NES is only 32KB.

void            BMCRInit();
void            BMCRRefresh(BMC* Block, uint32_t HardspotLast);
BMC*            BMCRSearch(uint16_t Addr);

#ifdef __cplusplus
 }
#endif

#endif	/* BMCREPOSITORY_H */
